<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>opennars: aruntime/src/main/java/nars/inference/RuleTables.java Source File</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">opennars
   &#160;<span id="projectnumber">1.5.5</span>
   </div>
   <div id="projectbrief">1.5-ish</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="../../index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="../../pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="../../namespaces.html"><span>Packages</span></a></li>
      <li><a href="../../annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="../../files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="../../search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="../../search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="../../files.html"><span>File&#160;List</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('d1/d5e/RuleTables_8java_source.html','../../');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">RuleTables.java</div>  </div>
</div><!--header-->
<div class="contents">
<a href="../../d1/d5e/RuleTables_8java.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * RuleTables.java</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Copyright (C) 2008  Pei Wang</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * This file is part of Open-NARS.</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> * Open-NARS is free software; you can redistribute it and/or modify</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> * the Free Software Foundation, either version 2 of the License, or</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> * (at your option) any later version.</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> * Open-NARS is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * along with Open-NARS.  If not, see &lt;http://www.gnu.org/licenses/&gt;.</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="keyword">package </span>nars.inference;</div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="keyword">import</span> <a class="code" href="../../d7/d81/namespacenars.html">nars</a>.<a class="code" href="../../db/dec/namespacenars_1_1entity.html">entity</a>.*;</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="keyword">import</span> <a class="code" href="../../d7/d81/namespacenars.html">nars</a>.<a class="code" href="../../d0/d72/namespacenars_1_1language.html">language</a>.*;</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">import</span> <a class="code" href="../../d7/d81/namespacenars.html">nars</a>.<a class="code" href="../../de/ddc/namespacenars_1_1storage.html">storage</a>.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a>;</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="keyword">import</span> <a class="code" href="../../d7/d81/namespacenars.html">nars</a>.<a class="code" href="../../db/d64/namespacenars_1_1io.html">io</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>;</div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables.html">   33</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables.html">RuleTables</a> {</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_ac2d01dfdc40bdd47c757cb549217e6e3.html#ac2d01dfdc40bdd47c757cb549217e6e3">   45</a></span>&#160;    <span class="keyword">public</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_ac2d01dfdc40bdd47c757cb549217e6e3.html#ac2d01dfdc40bdd47c757cb549217e6e3">reason</a>(<a class="code" href="../../d9/d27/classnars_1_1entity_1_1TaskLink.html">TaskLink</a> tLink, <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a> bLink, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;        <a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task.html">Task</a> task = memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>();</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;        <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> taskSentence = task.<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>();</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> taskTerm = (<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a>) taskSentence.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ad1ded9a02cae3557948d05530cd4d37e.html#ad1ded9a02cae3557948d05530cd4d37e">getContent</a>().<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ae2dba162b71bb9b806f54832249a260c.html#ae2dba162b71bb9b806f54832249a260c">clone</a>(); <span class="comment">// cloning for</span></div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                                                                    <span class="comment">// substitution</span></div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> beliefTerm = (<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a>) bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a133e3243292f9daacaa8443acef6b185.html#a133e3243292f9daacaa8443acef6b185">getTarget</a>().<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ae2dba162b71bb9b806f54832249a260c.html#ae2dba162b71bb9b806f54832249a260c">clone</a>(); <span class="comment">// cloning for</span></div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                                                            <span class="comment">// substitution</span></div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;        <a class="code" href="../../d4/d22/classnars_1_1entity_1_1Concept.html">Concept</a> beliefConcept = memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a19d1a5ec8277f907caaef4ecfcab2f28.html#a19d1a5ec8277f907caaef4ecfcab2f28">termToConcept</a>(beliefTerm);</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;        <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> belief = null;</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;        <span class="keywordflow">if</span> (beliefConcept != null) {</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;            belief = beliefConcept.<a class="code" href="../../d4/d22/classnars_1_1entity_1_1Concept_a37e00599fc19c5931da40bd446890f89.html#a37e00599fc19c5931da40bd446890f89">getBelief</a>(task);</div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        }</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a3482da9df329962e73213118fbaef131.html#a3482da9df329962e73213118fbaef131">setCurrentBelief</a>(belief); <span class="comment">// may be null</span></div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;            <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_aac1c92950f50edd04d12229a8c992987.html#aac1c92950f50edd04d12229a8c992987">match</a>(task, belief, memory);</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        }</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;        <span class="keywordflow">if</span> (!memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a871fc44819f07232afb4573ad704dee0.html#a871fc44819f07232afb4573ad704dee0">noResult</a>()) {</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;            <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        }</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <span class="keywordtype">short</span> tIndex = tLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0);</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <span class="keywordtype">short</span> bIndex = bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0);</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;        <span class="keywordflow">switch</span> (tLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02.html#a795ea0b57cd6467bbe2a8f68a34cba02">getType</a>()) { <span class="comment">// dispatch first by TaskLink type</span></div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;            <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_abc9e35e4d0450f422fc03e2e53394e6a.html#abc9e35e4d0450f422fc03e2e53394e6a">SELF</a> :</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;                <span class="keywordflow">switch</span> (bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02.html#a795ea0b57cd6467bbe2a8f68a34cba02">getType</a>()) {</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a267c238e8b0425f2f5ca407b16092d00.html#a267c238e8b0425f2f5ca407b16092d00">COMPONENT</a> :</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;                        <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">compoundAndSelf</a>((<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) taskTerm, beliefTerm,</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;                                <span class="keyword">true</span>, memory);</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ad95ac3ddd10cac258cecddba9b8a7fa1.html#ad95ac3ddd10cac258cecddba9b8a7fa1">COMPOUND</a> :</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;                        <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">compoundAndSelf</a>((<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) beliefTerm, taskTerm,</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;                                <span class="keyword">false</span>, memory);</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a460d426cd9959e390cc7f66ba7a4b024.html#a460d426cd9959e390cc7f66ba7a4b024">COMPONENT_STATEMENT</a> :</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;                            <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a08c8ce3ed165e9c09a7a379d9e871626.html#a08c8ce3ed165e9c09a7a379d9e871626">detachment</a>(task.<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>(),</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;                                    belief, bIndex, memory);</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                        }</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea.html#a6c0e98a7948be8d940ba6afc52d43fea">COMPOUND_STATEMENT</a> :</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;                            <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a08c8ce3ed165e9c09a7a379d9e871626.html#a08c8ce3ed165e9c09a7a379d9e871626">detachment</a>(belief,</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;                                    task.<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>(), bIndex, memory);</div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;                        }</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae7bcc74faf32830b75e1ce3eebfd3a93.html#ae7bcc74faf32830b75e1ce3eebfd3a93">COMPONENT_CONDITION</a> :</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;                            bIndex = bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(1);</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;                            <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a6ee55e2d5114b506fdf5c59ae00dcd19.html#a6ee55e2d5114b506fdf5c59ae00dcd19">conditionalDedInd</a>(</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;                                    (<a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) taskTerm, bIndex, beliefTerm,</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;                                    tIndex, memory);</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;                        }</div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae891eef9a9d8c49a597a0f61a16b4570.html#ae891eef9a9d8c49a597a0f61a16b4570">COMPOUND_CONDITION</a> :</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;                            bIndex = bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(1);</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;                            <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a6ee55e2d5114b506fdf5c59ae00dcd19.html#a6ee55e2d5114b506fdf5c59ae00dcd19">conditionalDedInd</a>(</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;                                    (<a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) beliefTerm, bIndex, taskTerm,</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;                                    tIndex, memory);</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;                        }</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;                }</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;            <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ad95ac3ddd10cac258cecddba9b8a7fa1.html#ad95ac3ddd10cac258cecddba9b8a7fa1">COMPOUND</a> :</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;                <span class="keywordflow">switch</span> (bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02.html#a795ea0b57cd6467bbe2a8f68a34cba02">getType</a>()) {</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ad95ac3ddd10cac258cecddba9b8a7fa1.html#ad95ac3ddd10cac258cecddba9b8a7fa1">COMPOUND</a> :</div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;                        <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a764dbc9ccccf406df45e09fbfeda928f.html#a764dbc9ccccf406df45e09fbfeda928f">compoundAndCompound</a>((<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) taskTerm,</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;                                (<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) beliefTerm, memory);</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea.html#a6c0e98a7948be8d940ba6afc52d43fea">COMPOUND_STATEMENT</a> :</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;                        <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8e422154fd8288d161435c3a53e44276.html#a8e422154fd8288d161435c3a53e44276">compoundAndStatement</a>((<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) taskTerm, tIndex,</div>
<div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;                                (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) beliefTerm, bIndex, beliefTerm,</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;                                memory);</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae891eef9a9d8c49a597a0f61a16b4570.html#ae891eef9a9d8c49a597a0f61a16b4570">COMPOUND_CONDITION</a> :</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;                            <span class="keywordflow">if</span> (beliefTerm instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) {</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;                                <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a6ee55e2d5114b506fdf5c59ae00dcd19.html#a6ee55e2d5114b506fdf5c59ae00dcd19">conditionalDedInd</a>(</div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;                                        (Implication) beliefTerm, bIndex,</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;                                        taskTerm, -1, memory);</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;                            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof <a class="code" href="../../d1/d8b/classnars_1_1language_1_1Equivalence.html">Equivalence</a>) {</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                                <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a90588e33b6d7ca522e787ee476a2a012.html#a90588e33b6d7ca522e787ee476a2a012">conditionalAna</a>(</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                                        (Equivalence) beliefTerm, bIndex,</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                                        taskTerm, -1, memory);</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                            }</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;                        }</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                }</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;            <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea.html#a6c0e98a7948be8d940ba6afc52d43fea">COMPOUND_STATEMENT</a> :</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;                <span class="keywordflow">switch</span> (bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02.html#a795ea0b57cd6467bbe2a8f68a34cba02">getType</a>()) {</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a267c238e8b0425f2f5ca407b16092d00.html#a267c238e8b0425f2f5ca407b16092d00">COMPONENT</a> :</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;                        <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a274b39b31e00ef27ae6baeaad3894a6a.html#a274b39b31e00ef27ae6baeaad3894a6a">componentAndStatement</a>(</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;                                (<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a8e0d3146c07a1cc961d3ebc63317412d.html#a8e0d3146c07a1cc961d3ebc63317412d">getCurrentTerm</a>(), bIndex,</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;                                (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) taskTerm, tIndex, memory);</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ad95ac3ddd10cac258cecddba9b8a7fa1.html#ad95ac3ddd10cac258cecddba9b8a7fa1">COMPOUND</a> :</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;                        <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8e422154fd8288d161435c3a53e44276.html#a8e422154fd8288d161435c3a53e44276">compoundAndStatement</a>((<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) beliefTerm, bIndex,</div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;                                (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) taskTerm, tIndex, beliefTerm,</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;                                memory);</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea.html#a6c0e98a7948be8d940ba6afc52d43fea">COMPOUND_STATEMENT</a> :</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;                            <span class="comment">// bIndex = bLink.getIndex(1);</span></div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;                            <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8628d400a8ceda7fea05039ddfea319b.html#a8628d400a8ceda7fea05039ddfea319b">syllogisms</a>(tLink, bLink, taskTerm, beliefTerm,</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;                                    memory);</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;                        }</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae891eef9a9d8c49a597a0f61a16b4570.html#ae891eef9a9d8c49a597a0f61a16b4570">COMPOUND_CONDITION</a> :</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;                            bIndex = bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(1);</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                            <span class="keywordflow">if</span> (beliefTerm instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) {</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;                                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a62599450d65ff257b92df0d48d7c1bdf.html#a62599450d65ff257b92df0d48d7c1bdf">conditionalDedIndWithVar</a>(</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                                        (Implication) beliefTerm, bIndex,</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                                        (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) taskTerm, tIndex, memory);</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;                            }</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;                        }</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;                }</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;            <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae891eef9a9d8c49a597a0f61a16b4570.html#ae891eef9a9d8c49a597a0f61a16b4570">COMPOUND_CONDITION</a> :</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;                <span class="keywordflow">switch</span> (bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02.html#a795ea0b57cd6467bbe2a8f68a34cba02">getType</a>()) {</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;                    <span class="keywordflow">case</span> <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a>.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea.html#a6c0e98a7948be8d940ba6afc52d43fea">COMPOUND_STATEMENT</a> :</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;                        <span class="keywordflow">if</span> (belief != null) {</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;                            <span class="keywordflow">if</span> (taskTerm instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>)</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;                                <span class="comment">// TODO maybe put instanceof test within</span></div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;                                <span class="comment">// conditionalDedIndWithVar()</span></div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;                                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a62599450d65ff257b92df0d48d7c1bdf.html#a62599450d65ff257b92df0d48d7c1bdf">conditionalDedIndWithVar</a>(</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;                                        (Implication) taskTerm, tIndex,</div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;                                        (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) beliefTerm, bIndex, memory);</div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;                        }</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;                        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;                }</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        }</div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;    }</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    <span class="comment">/* ----- syllogistic inferences ----- */</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8628d400a8ceda7fea05039ddfea319b.html#a8628d400a8ceda7fea05039ddfea319b">  197</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8628d400a8ceda7fea05039ddfea319b.html#a8628d400a8ceda7fea05039ddfea319b">syllogisms</a>(<a class="code" href="../../d9/d27/classnars_1_1entity_1_1TaskLink.html">TaskLink</a> tLink, <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a> bLink,</div>
<div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;            <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> taskTerm, <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> beliefTerm, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> taskSentence = memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>().<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>();</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> belief = memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_aae366ea198c2340fef786120d5c2163b.html#aae366ea198c2340fef786120d5c2163b">getCurrentBelief</a>();</div>
<div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        <span class="keywordtype">int</span> figure;</div>
<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        <span class="keywordflow">if</span> (taskTerm instanceof <a class="code" href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">Inheritance</a>) {</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;            <span class="keywordflow">if</span> (beliefTerm instanceof Inheritance) {</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(tLink, bLink);</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a34927349efcf87db97d23c60983b115b.html#a34927349efcf87db97d23c60983b115b">asymmetricAsymmetric</a>(taskSentence, belief, figure, memory);</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof <a class="code" href="../../d3/d1f/classnars_1_1language_1_1Similarity.html">Similarity</a>) {</div>
<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(tLink, bLink);</div>
<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">asymmetricSymmetric</a>(taskSentence, belief, figure, memory);</div>
<div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84.html#a3e3eec10853be6dcf8c7532259cf4a84">detachmentWithVar</a>(belief, taskSentence, bLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0),</div>
<div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;                        memory);</div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;            }</div>
<div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (taskTerm instanceof <a class="code" href="../../d3/d1f/classnars_1_1language_1_1Similarity.html">Similarity</a>) {</div>
<div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;            <span class="keywordflow">if</span> (beliefTerm instanceof Inheritance) {</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(bLink, tLink);</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">asymmetricSymmetric</a>(belief, taskSentence, figure, memory);</div>
<div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof Similarity) {</div>
<div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(bLink, tLink);</div>
<div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_ab64fca3ebda3499b831c2b93df736530.html#ab64fca3ebda3499b831c2b93df736530">symmetricSymmetric</a>(belief, taskSentence, figure, memory);</div>
<div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;            }</div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (taskTerm instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) {</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;            <span class="keywordflow">if</span> (beliefTerm instanceof Implication) {</div>
<div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(tLink, bLink);</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a34927349efcf87db97d23c60983b115b.html#a34927349efcf87db97d23c60983b115b">asymmetricAsymmetric</a>(taskSentence, belief, figure, memory);</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof <a class="code" href="../../d1/d8b/classnars_1_1language_1_1Equivalence.html">Equivalence</a>) {</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(tLink, bLink);</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">asymmetricSymmetric</a>(taskSentence, belief, figure, memory);</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof Inheritance) {</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84.html#a3e3eec10853be6dcf8c7532259cf4a84">detachmentWithVar</a>(taskSentence, belief, tLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0),</div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;                        memory);</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;            }</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (taskTerm instanceof <a class="code" href="../../d1/d8b/classnars_1_1language_1_1Equivalence.html">Equivalence</a>) {</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;            <span class="keywordflow">if</span> (beliefTerm instanceof Implication) {</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(bLink, tLink);</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">asymmetricSymmetric</a>(belief, taskSentence, figure, memory);</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof Equivalence) {</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;                figure = <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(bLink, tLink);</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_ab64fca3ebda3499b831c2b93df736530.html#ab64fca3ebda3499b831c2b93df736530">symmetricSymmetric</a>(belief, taskSentence, figure, memory);</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (beliefTerm instanceof Inheritance) {</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84.html#a3e3eec10853be6dcf8c7532259cf4a84">detachmentWithVar</a>(taskSentence, belief, tLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0),</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;                        memory);</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;            }</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;        }</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    }</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div>
<div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">  256</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">indexToFigure</a>(<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a> link1, <a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">TermLink</a> link2) {</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;        <span class="keywordflow">return</span> (link1.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0) + 1) * 10 + (link2.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">getIndex</a>(0) + 1);</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    }</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div>
<div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a34927349efcf87db97d23c60983b115b.html#a34927349efcf87db97d23c60983b115b">  272</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a34927349efcf87db97d23c60983b115b.html#a34927349efcf87db97d23c60983b115b">asymmetricAsymmetric</a>(<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> sentence,</div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;            <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> belief, <span class="keywordtype">int</span> figure, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> s1 = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) sentence.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">cloneContent</a>();</div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> s2 = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) belief.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">cloneContent</a>();</div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> t1, t2;</div>
<div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;        <span class="keywordflow">switch</span> (figure) {</div>
<div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;            <span class="keywordflow">case</span> 11 : <span class="comment">// induction</span></div>
<div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(),</div>
<div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), s1, s2)) {</div>
<div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;                    <span class="keywordflow">if</span> (s1.<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">equals</a>(s2)) {</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;                        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;                    }</div>
<div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;                    t1 = s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;                    t2 = s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;                    <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a698f01981603a38d9da0e48930095d50.html#a698f01981603a38d9da0e48930095d50">abdIndCom</a>(t1, t2, sentence, belief,</div>
<div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;                            figure, memory);</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;                    <a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules.html">CompositionalRules</a>.<a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_a53f7edf7bfe7433da42e8fcf36fd6604.html#a53f7edf7bfe7433da42e8fcf36fd6604">composeCompound</a>(s1, s2, 0, memory);</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;                }</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;</div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;            <span class="keywordflow">case</span> 12 : <span class="comment">// deduction</span></div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(),</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), s1, s2)) {</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;                    <span class="keywordflow">if</span> (s1.<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">equals</a>(s2)) {</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;                        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;                    }</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;                    t1 = s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;                    t2 = s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;                    <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">VAR_QUERY</a>, t1, t2, s1, s2)) {</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;                        <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a93af32adec92cf57671c32e9ccc2dffc.html#a93af32adec92cf57671c32e9ccc2dffc">matchReverse</a>(memory);</div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;                    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a5724b3ed7e885c29110acceac0d677d5.html#a5724b3ed7e885c29110acceac0d677d5">dedExe</a>(t1, t2, sentence, belief,</div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;                                memory);</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;                    }</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;                }</div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;            <span class="keywordflow">case</span> 21 : <span class="comment">// exemplification</span></div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(),</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), s1, s2)) {</div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;                    <span class="keywordflow">if</span> (s1.<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">equals</a>(s2)) {</div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;                        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;                    }</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;                    t1 = s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;                    t2 = s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;                    <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">VAR_QUERY</a>, t1, t2, s1, s2)) {</div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;                        <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a93af32adec92cf57671c32e9ccc2dffc.html#a93af32adec92cf57671c32e9ccc2dffc">matchReverse</a>(memory);</div>
<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;                    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a5724b3ed7e885c29110acceac0d677d5.html#a5724b3ed7e885c29110acceac0d677d5">dedExe</a>(t1, t2, sentence, belief,</div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;                                memory);</div>
<div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;                    }</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;                }</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;            <span class="keywordflow">case</span> 22 : <span class="comment">// abduction</span></div>
<div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(),</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), s1, s2)) {</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;                    <span class="keywordflow">if</span> (s1.<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">equals</a>(s2)) {</div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;                        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;                    }</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;                    t1 = s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;                    t2 = s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;                    <span class="keywordflow">if</span> (!<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a></div>
<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;                            .conditionalAbd(t1, t2, s1, s2, memory)) { <span class="comment">// if</span></div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;                                                                        <span class="comment">// conditional</span></div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;                                                                        <span class="comment">// abduction,</span></div>
<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;                                                                        <span class="comment">// skip</span></div>
<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;                                                                        <span class="comment">// the</span></div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;                                                                        <span class="comment">// following</span></div>
<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a698f01981603a38d9da0e48930095d50.html#a698f01981603a38d9da0e48930095d50">abdIndCom</a>(t1, t2, sentence, belief,</div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;                                figure, memory);</div>
<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;                        <a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules.html">CompositionalRules</a>.<a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_a53f7edf7bfe7433da42e8fcf36fd6604.html#a53f7edf7bfe7433da42e8fcf36fd6604">composeCompound</a>(s1, s2, 1, memory);</div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;                    }</div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;                }</div>
<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;            <span class="keywordflow">default</span> :</div>
<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;        }</div>
<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;    }</div>
<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;</div>
<div class="line"><a name="l00362"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">  362</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">asymmetricSymmetric</a>(<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> asym, <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> sym,</div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;            <span class="keywordtype">int</span> figure, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> asymSt = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) asym.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">cloneContent</a>();</div>
<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> symSt = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) sym.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">cloneContent</a>();</div>
<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> t1, t2;</div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        <span class="keywordflow">switch</span> (figure) {</div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;            <span class="keywordflow">case</span> 11 :</div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>,</div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;                        asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), asymSt, symSt)) {</div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;                    t1 = asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;                    t2 = symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;                    <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a></div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;                            .unify(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">VAR_QUERY</a>, t1, t2, asymSt, symSt)) {</div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;                        <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a2a6db5879fbb7ba315891fa9d49c985b.html#a2a6db5879fbb7ba315891fa9d49c985b">matchAsymSym</a>(asym, sym, figure, memory);</div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;                    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a9403109ff25044e65311d553d99a490d.html#a9403109ff25044e65311d553d99a490d">analogy</a>(t2, t1, asym, sym, figure,</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;                                memory);</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;                    }</div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;                }</div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;            <span class="keywordflow">case</span> 12 :</div>
<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>,</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;                        asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), asymSt,</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;                        symSt)) {</div>
<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;                    t1 = asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;                    t2 = symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;                    <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a></div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;                            .unify(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">VAR_QUERY</a>, t1, t2, asymSt, symSt)) {</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;                        <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a2a6db5879fbb7ba315891fa9d49c985b.html#a2a6db5879fbb7ba315891fa9d49c985b">matchAsymSym</a>(asym, sym, figure, memory);</div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;                    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a9403109ff25044e65311d553d99a490d.html#a9403109ff25044e65311d553d99a490d">analogy</a>(t2, t1, asym, sym, figure,</div>
<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;                                memory);</div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;                    }</div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;                }</div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;            <span class="keywordflow">case</span> 21 :</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>,</div>
<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;                        asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), asymSt,</div>
<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;                        symSt)) {</div>
<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;                    t1 = asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;                    t2 = symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                    <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a></div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;                            .unify(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">VAR_QUERY</a>, t1, t2, asymSt, symSt)) {</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;                        <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a2a6db5879fbb7ba315891fa9d49c985b.html#a2a6db5879fbb7ba315891fa9d49c985b">matchAsymSym</a>(asym, sym, figure, memory);</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;                    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a9403109ff25044e65311d553d99a490d.html#a9403109ff25044e65311d553d99a490d">analogy</a>(t1, t2, asym, sym, figure,</div>
<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;                                memory);</div>
<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;                    }</div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;                }</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;            <span class="keywordflow">case</span> 22 :</div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>,</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;                        asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), asymSt,</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;                        symSt)) {</div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                    t1 = asymSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                    t2 = symSt.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;                    <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a></div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                            .unify(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">VAR_QUERY</a>, t1, t2, asymSt, symSt)) {</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                        <a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">LocalRules</a>.<a class="code" href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a2a6db5879fbb7ba315891fa9d49c985b.html#a2a6db5879fbb7ba315891fa9d49c985b">matchAsymSym</a>(asym, sym, figure, memory);</div>
<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;                    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;                        <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a9403109ff25044e65311d553d99a490d.html#a9403109ff25044e65311d553d99a490d">analogy</a>(t1, t2, asym, sym, figure,</div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;                                memory);</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;                    }</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;                }</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;        }</div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    }</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;</div>
<div class="line"><a name="l00442"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_ab64fca3ebda3499b831c2b93df736530.html#ab64fca3ebda3499b831c2b93df736530">  442</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_ab64fca3ebda3499b831c2b93df736530.html#ab64fca3ebda3499b831c2b93df736530">symmetricSymmetric</a>(<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> belief,</div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;            <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> taskSentence, <span class="keywordtype">int</span> figure, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> s1 = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) belief.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">cloneContent</a>();</div>
<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> s2 = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) taskSentence.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">cloneContent</a>();</div>
<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;        <span class="keywordflow">switch</span> (figure) {</div>
<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;            <span class="keywordflow">case</span> 11 :</div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(),</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), s1, s2)) {</div>
<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;                    <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a171a1f81d7f22d9cd0301220a79f4a63.html#a171a1f81d7f22d9cd0301220a79f4a63">resemblance</a>(s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(),</div>
<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;                            s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), belief, taskSentence, figure,</div>
<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;                            memory);</div>
<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;                }</div>
<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;            <span class="keywordflow">case</span> 12 :</div>
<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(),</div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), s1, s2)) {</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;                    <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a171a1f81d7f22d9cd0301220a79f4a63.html#a171a1f81d7f22d9cd0301220a79f4a63">resemblance</a>(s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(),</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;                            s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), belief, taskSentence, figure,</div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;                            memory);</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;                }</div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;            <span class="keywordflow">case</span> 21 :</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(),</div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), s1, s2)) {</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;                    <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a171a1f81d7f22d9cd0301220a79f4a63.html#a171a1f81d7f22d9cd0301220a79f4a63">resemblance</a>(s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(),</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;                            s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), belief, taskSentence, figure,</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;                            memory);</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;                }</div>
<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;            <span class="keywordflow">case</span> 22 :</div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(),</div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;                        s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>(), s1, s2)) {</div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;                    <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a171a1f81d7f22d9cd0301220a79f4a63.html#a171a1f81d7f22d9cd0301220a79f4a63">resemblance</a>(s1.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(),</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;                            s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>(), belief, taskSentence, figure,</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;                            memory);</div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;                }</div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;        }</div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;    }</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;    <span class="comment">/* ----- conditional inferences ----- */</span></div>
<div class="line"><a name="l00495"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84.html#a3e3eec10853be6dcf8c7532259cf4a84">  495</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84.html#a3e3eec10853be6dcf8c7532259cf4a84">detachmentWithVar</a>(<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> originalMainSentence,</div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;            <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> subSentence, <span class="keywordtype">int</span> index, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;        <a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a> mainSentence = (<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">Sentence</a>) originalMainSentence.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_a721f626ab83f34dc2e6858a4eede7102.html#a721f626ab83f34dc2e6858a4eede7102">clone</a>(); <span class="comment">// for</span></div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;                                                                            <span class="comment">// substitution</span></div>
<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;        <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> statement = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) mainSentence.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ad1ded9a02cae3557948d05530cd4d37e.html#ad1ded9a02cae3557948d05530cd4d37e">getContent</a>();</div>
<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> component = statement.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">componentAt</a>(index);</div>
<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> content = subSentence.<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_ad1ded9a02cae3557948d05530cd4d37e.html#ad1ded9a02cae3557948d05530cd4d37e">getContent</a>();</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;        <span class="keywordflow">if</span> ((component instanceof <a class="code" href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">Inheritance</a>)</div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;                &amp;&amp; (memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_aae366ea198c2340fef786120d5c2163b.html#aae366ea198c2340fef786120d5c2163b">getCurrentBelief</a>() != null)) {</div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;            <span class="keywordflow">if</span> (component.<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_a88297bdbbfb5f3e292783647b14f0c70.html#a88297bdbbfb5f3e292783647b14f0c70">isConstant</a>()) {</div>
<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;                <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a08c8ce3ed165e9c09a7a379d9e871626.html#a08c8ce3ed165e9c09a7a379d9e871626">detachment</a>(mainSentence, subSentence, index,</div>
<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;                        memory);</div>
<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, component,</div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;                    content, statement, content)) {</div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;                <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a08c8ce3ed165e9c09a7a379d9e871626.html#a08c8ce3ed165e9c09a7a379d9e871626">detachment</a>(mainSentence, subSentence, index,</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;                        memory);</div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((statement instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>)</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;                    &amp;&amp; (statement.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>() instanceof <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>)</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;                    &amp;&amp; (memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>().<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>().<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_a7d95d60caaf4c895559182a7eb2ff71e.html#a7d95d60caaf4c895559182a7eb2ff71e">isJudgment</a>())) {</div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;                <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> s2 = (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) statement.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">getPredicate</a>();</div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;                <span class="keywordflow">if</span> (s2.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>().<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">equals</a>(((<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) content).getSubject())) {</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;                    <a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules.html">CompositionalRules</a>.<a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_ae7906cfca35e9c7568ace240aba808a0.html#ae7906cfca35e9c7568ace240aba808a0">introVarInner</a>((<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) content, s2,</div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;                            statement, memory);</div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;                }</div>
<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;            }</div>
<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        }</div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;    }</div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;</div>
<div class="line"><a name="l00538"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a62599450d65ff257b92df0d48d7c1bdf.html#a62599450d65ff257b92df0d48d7c1bdf">  538</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a62599450d65ff257b92df0d48d7c1bdf.html#a62599450d65ff257b92df0d48d7c1bdf">conditionalDedIndWithVar</a>(<a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a> conditional,</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;            <span class="keywordtype">short</span> index, <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> statement, <span class="keywordtype">short</span> side, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;        <a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> condition = (<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) conditional.<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">getSubject</a>();</div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> component = condition.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">componentAt</a>(index);</div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> component2 = null;</div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;        <span class="keywordflow">if</span> (statement instanceof <a class="code" href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">Inheritance</a>) {</div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;            component2 = statement;</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;            side = -1;</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (statement instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) {</div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;            component2 = statement.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">componentAt</a>(side);</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;        }</div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        <span class="keywordflow">if</span> ((component2 != null)</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;                &amp;&amp; <a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">VAR_INDEPENDENT</a>, component,</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;                        component2, conditional, statement)) {</div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;            <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a6ee55e2d5114b506fdf5c59ae00dcd19.html#a6ee55e2d5114b506fdf5c59ae00dcd19">conditionalDedInd</a>(conditional, index, statement,</div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;                    side, memory);</div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;        }</div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;    }</div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;</div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    <span class="comment">/* ----- structural inferences ----- */</span></div>
<div class="line"><a name="l00570"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">  570</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">compoundAndSelf</a>(<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> compound, <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> component,</div>
<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;            <span class="keywordtype">boolean</span> compoundTask, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;        <span class="keywordflow">if</span> ((compound instanceof <a class="code" href="../../d6/d98/classnars_1_1language_1_1Conjunction.html">Conjunction</a>)</div>
<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;                || (compound instanceof <a class="code" href="../../d9/d5d/classnars_1_1language_1_1Disjunction.html">Disjunction</a>)) {</div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;            <span class="keywordflow">if</span> (memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_aae366ea198c2340fef786120d5c2163b.html#aae366ea198c2340fef786120d5c2163b">getCurrentBelief</a>() != null) {</div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;                <a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules.html">CompositionalRules</a>.<a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_a6ce4b4caba57fe856aff6f6a2c7ee552.html#a6ce4b4caba57fe856aff6f6a2c7ee552">decomposeStatement</a>(compound, component,</div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;                        compoundTask, memory);</div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (compound.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ad637ccaf9aecf41f3961d095900f2d5e.html#ad637ccaf9aecf41f3961d095900f2d5e">containComponent</a>(component)) {</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;                <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_aa98f40a1f1409b81531260124ebd13db.html#aa98f40a1f1409b81531260124ebd13db">structuralCompound</a>(compound, component,</div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;                        compoundTask, memory);</div>
<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160;            }</div>
<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((compound instanceof <a class="code" href="../../da/d1e/classnars_1_1language_1_1Negation.html">Negation</a>)</div>
<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;                &amp;&amp; !memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>().<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_a23c0c966a1f5687123c089731f951e78.html#a23c0c966a1f5687123c089731f951e78">isStructural</a>()) {</div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;            <span class="keywordflow">if</span> (compoundTask) {</div>
<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;                <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_abdbbd955e13acf7fef8c6571b50cfebc.html#abdbbd955e13acf7fef8c6571b50cfebc">transformNegation</a>(</div>
<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;                        ((Negation) compound).componentAt(0), memory);</div>
<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;                <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_abdbbd955e13acf7fef8c6571b50cfebc.html#abdbbd955e13acf7fef8c6571b50cfebc">transformNegation</a>(compound, memory);</div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;            }</div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;        }</div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;    }</div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;</div>
<div class="line"><a name="l00602"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a764dbc9ccccf406df45e09fbfeda928f.html#a764dbc9ccccf406df45e09fbfeda928f">  602</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a764dbc9ccccf406df45e09fbfeda928f.html#a764dbc9ccccf406df45e09fbfeda928f">compoundAndCompound</a>(<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> taskTerm,</div>
<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;            <a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> beliefTerm, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;        <span class="keywordflow">if</span> (taskTerm.getClass() == beliefTerm.getClass()) {</div>
<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;            <span class="keywordflow">if</span> (taskTerm.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ac81c5851f664320ddec435641f198b03.html#ac81c5851f664320ddec435641f198b03">size</a>() &gt; beliefTerm.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ac81c5851f664320ddec435641f198b03.html#ac81c5851f664320ddec435641f198b03">size</a>()) {</div>
<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">compoundAndSelf</a>(taskTerm, beliefTerm, <span class="keyword">true</span>, memory);</div>
<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (taskTerm.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ac81c5851f664320ddec435641f198b03.html#ac81c5851f664320ddec435641f198b03">size</a>() &lt; beliefTerm.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ac81c5851f664320ddec435641f198b03.html#ac81c5851f664320ddec435641f198b03">size</a>()) {</div>
<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;                <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">compoundAndSelf</a>(beliefTerm, taskTerm, <span class="keyword">false</span>, memory);</div>
<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;            }</div>
<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;        }</div>
<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;    }</div>
<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;</div>
<div class="line"><a name="l00629"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8e422154fd8288d161435c3a53e44276.html#a8e422154fd8288d161435c3a53e44276">  629</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8e422154fd8288d161435c3a53e44276.html#a8e422154fd8288d161435c3a53e44276">compoundAndStatement</a>(<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> compound,</div>
<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;            <span class="keywordtype">short</span> index, <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> statement, <span class="keywordtype">short</span> side, <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> beliefTerm,</div>
<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;            <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> component = compound.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">componentAt</a>(index);</div>
<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;        <a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task.html">Task</a> task = memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>();</div>
<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;        <span class="keywordflow">if</span> (component.getClass() == statement.getClass()) {</div>
<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;            <span class="keywordflow">if</span> ((compound instanceof <a class="code" href="../../d6/d98/classnars_1_1language_1_1Conjunction.html">Conjunction</a>)</div>
<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;                    &amp;&amp; (memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_aae366ea198c2340fef786120d5c2163b.html#aae366ea198c2340fef786120d5c2163b">getCurrentBelief</a>() != null)) {</div>
<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable.html">Variable</a>.<a class="code" href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">unify</a>(<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols.html">Symbols</a>.<a class="code" href="../../dc/d71/classnars_1_1io_1_1Symbols_a3c9984ce55deb7819945871ce1fa3a82.html#a3c9984ce55deb7819945871ce1fa3a82">VAR_DEPENDENT</a>, component, statement,</div>
<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;                        compound, statement)) {</div>
<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;                    <a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">SyllogisticRules</a>.<a class="code" href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a315c474733bb01f6f01e579221b417d4.html#a315c474733bb01f6f01e579221b417d4">elimiVarDep</a>(compound, component,</div>
<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;                            statement.<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">equals</a>(beliefTerm), memory);</div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;                } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (task.<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>().<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_a7d95d60caaf4c895559182a7eb2ff71e.html#a7d95d60caaf4c895559182a7eb2ff71e">isJudgment</a>()) { <span class="comment">// &amp;&amp;</span></div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;                                                                <span class="comment">// !compound.containComponent(component))</span></div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;                                                                <span class="comment">// {</span></div>
<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;                    <a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules.html">CompositionalRules</a>.<a class="code" href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_ae7906cfca35e9c7568ace240aba808a0.html#ae7906cfca35e9c7568ace240aba808a0">introVarInner</a>(statement,</div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;                            (<a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a>) component, compound, memory);</div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;                }</div>
<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;            }</div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;            <span class="keywordflow">if</span> (!task.<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_a23c0c966a1f5687123c089731f951e78.html#a23c0c966a1f5687123c089731f951e78">isStructural</a>() &amp;&amp; task.<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">getSentence</a>().<a class="code" href="../../d6/d25/classnars_1_1entity_1_1Sentence_a7d95d60caaf4c895559182a7eb2ff71e.html#a7d95d60caaf4c895559182a7eb2ff71e">isJudgment</a>()) {</div>
<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;                <span class="keywordflow">if</span> (statement instanceof <a class="code" href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">Inheritance</a>) {</div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;                    <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a29e0fbd7745a4ae5e324dbfe64b8f488.html#a29e0fbd7745a4ae5e324dbfe64b8f488">structuralCompose1</a>(compound, index,</div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;                            statement, memory);</div>
<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;                    <span class="comment">// if (!(compound instanceof SetExt) &amp;&amp; !(compound</span></div>
<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;                    <span class="comment">// instanceof SetInt)) {</span></div>
<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;                    <span class="keywordflow">if</span> (!(compound instanceof <a class="code" href="../../de/d1d/classnars_1_1language_1_1SetExt.html">SetExt</a></div>
<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;                            || compound instanceof <a class="code" href="../../d2/dfc/classnars_1_1language_1_1SetInt.html">SetInt</a> || compound instanceof <a class="code" href="../../da/d1e/classnars_1_1language_1_1Negation.html">Negation</a>)) {</div>
<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;                        <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a7baceb5d0b1adc6005f24cf83bc88e01.html#a7baceb5d0b1adc6005f24cf83bc88e01">structuralCompose2</a>(compound, index,</div>
<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;                                statement, side, memory);</div>
<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;                    } <span class="comment">// {A --&gt; B, A @ (A&amp;C)} |- (A&amp;C) --&gt; (B&amp;C)</span></div>
<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;                } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((statement instanceof <a class="code" href="../../d3/d1f/classnars_1_1language_1_1Similarity.html">Similarity</a>)</div>
<div class="line"><a name="l00661"></a><span class="lineno">  661</span>&#160;                        &amp;&amp; !(compound instanceof <a class="code" href="../../d6/d98/classnars_1_1language_1_1Conjunction.html">Conjunction</a>)) {</div>
<div class="line"><a name="l00662"></a><span class="lineno">  662</span>&#160;                    <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a7baceb5d0b1adc6005f24cf83bc88e01.html#a7baceb5d0b1adc6005f24cf83bc88e01">structuralCompose2</a>(compound, index,</div>
<div class="line"><a name="l00663"></a><span class="lineno">  663</span>&#160;                            statement, side, memory);</div>
<div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;                } <span class="comment">// {A &lt;-&gt; B, A @ (A&amp;C)} |- (A&amp;C) &lt;-&gt; (B&amp;C)</span></div>
<div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;            }</div>
<div class="line"><a name="l00666"></a><span class="lineno">  666</span>&#160;        }</div>
<div class="line"><a name="l00667"></a><span class="lineno">  667</span>&#160;    }</div>
<div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;</div>
<div class="line"><a name="l00683"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a274b39b31e00ef27ae6baeaad3894a6a.html#a274b39b31e00ef27ae6baeaad3894a6a">  683</a></span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a274b39b31e00ef27ae6baeaad3894a6a.html#a274b39b31e00ef27ae6baeaad3894a6a">componentAndStatement</a>(<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> compound,</div>
<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160;            <span class="keywordtype">short</span> index, <a class="code" href="../../d1/d5e/classnars_1_1language_1_1Statement.html">Statement</a> statement, <span class="keywordtype">short</span> side, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;        <span class="keywordflow">if</span> (!memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>().<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_a23c0c966a1f5687123c089731f951e78.html#a23c0c966a1f5687123c089731f951e78">isStructural</a>()) {</div>
<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;            <span class="keywordflow">if</span> (statement instanceof <a class="code" href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">Inheritance</a>) {</div>
<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;                <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_ab332619119b303e3ecf9920684448ff8.html#ab332619119b303e3ecf9920684448ff8">structuralDecompose1</a>(compound, index,</div>
<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;                        statement, memory);</div>
<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;                <span class="keywordflow">if</span> (!(compound instanceof <a class="code" href="../../de/d1d/classnars_1_1language_1_1SetExt.html">SetExt</a>)</div>
<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160;                        &amp;&amp; !(compound instanceof <a class="code" href="../../d2/dfc/classnars_1_1language_1_1SetInt.html">SetInt</a>)) {</div>
<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;                    <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a38aabb9f3b3a70e03852da1e32ec665d.html#a38aabb9f3b3a70e03852da1e32ec665d">structuralDecompose2</a>(statement, memory); <span class="comment">// {(C-B)</span></div>
<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;                                                                                <span class="comment">// --&gt;</span></div>
<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;                                                                                <span class="comment">// (C-A),</span></div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;                                                                                <span class="comment">// A</span></div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;                                                                                <span class="comment">// @</span></div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;                                                                                <span class="comment">// (C-A)}</span></div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;                                                                                <span class="comment">// |-</span></div>
<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;                                                                                <span class="comment">// A</span></div>
<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;                                                                                <span class="comment">// --&gt;</span></div>
<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;                                                                                <span class="comment">// B</span></div>
<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;                } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;                    <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_aa64a90e38bec275a6a3acba2a2eeefa1.html#aa64a90e38bec275a6a3acba2a2eeefa1">transformSetRelation</a>(compound, statement,</div>
<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;                            side, memory);</div>
<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;                }</div>
<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (statement instanceof <a class="code" href="../../d3/d1f/classnars_1_1language_1_1Similarity.html">Similarity</a>) {</div>
<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;                <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a38aabb9f3b3a70e03852da1e32ec665d.html#a38aabb9f3b3a70e03852da1e32ec665d">structuralDecompose2</a>(statement, memory); <span class="comment">// {(C-B)</span></div>
<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;                                                                            <span class="comment">// --&gt;</span></div>
<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;                                                                            <span class="comment">// (C-A),</span></div>
<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;                                                                            <span class="comment">// A</span></div>
<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;                                                                            <span class="comment">// @</span></div>
<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;                                                                            <span class="comment">// (C-A)}</span></div>
<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;                                                                            <span class="comment">// |-</span></div>
<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;                                                                            <span class="comment">// A</span></div>
<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;                                                                            <span class="comment">// --&gt;</span></div>
<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;                                                                            <span class="comment">// B</span></div>
<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;                <span class="keywordflow">if</span> ((compound instanceof <a class="code" href="../../de/d1d/classnars_1_1language_1_1SetExt.html">SetExt</a>)</div>
<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;                        || (compound instanceof <a class="code" href="../../d2/dfc/classnars_1_1language_1_1SetInt.html">SetInt</a>)) {</div>
<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;                    <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_aa64a90e38bec275a6a3acba2a2eeefa1.html#aa64a90e38bec275a6a3acba2a2eeefa1">transformSetRelation</a>(compound, statement,</div>
<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;                            side, memory);</div>
<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;                }</div>
<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;            } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((statement instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>)</div>
<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;                    &amp;&amp; (compound instanceof <a class="code" href="../../da/d1e/classnars_1_1language_1_1Negation.html">Negation</a>)) {</div>
<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;                <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a7eed75f5c3aa4d832eeb95dd5374d5c1.html#a7eed75f5c3aa4d832eeb95dd5374d5c1">contraposition</a>(statement, memory);</div>
<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;            }</div>
<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;        }</div>
<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;    }</div>
<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;</div>
<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;    <span class="comment">/* ----- inference with one TaskLink only ----- */</span></div>
<div class="line"><a name="l00738"></a><span class="lineno"><a class="line" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a61c932b424464483bd80c783294ab446.html#a61c932b424464483bd80c783294ab446">  738</a></span>&#160;    <span class="keyword">public</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="../../da/de3/classnars_1_1inference_1_1RuleTables_a61c932b424464483bd80c783294ab446.html#a61c932b424464483bd80c783294ab446">transformTask</a>(<a class="code" href="../../d9/d27/classnars_1_1entity_1_1TaskLink.html">TaskLink</a> tLink, <a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory.html">Memory</a> memory) {</div>
<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        <a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a> content = (<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) memory.<a class="code" href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">getCurrentTask</a>()</div>
<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;                .<a class="code" href="../../dc/ddc/classnars_1_1entity_1_1Task_a091f9ec3bdacfd6741f767cb62b14c0f.html#a091f9ec3bdacfd6741f767cb62b14c0f">getContent</a>().<a class="code" href="../../d8/db8/classnars_1_1language_1_1Term_ae2dba162b71bb9b806f54832249a260c.html#ae2dba162b71bb9b806f54832249a260c">clone</a>();</div>
<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;        <span class="keywordtype">short</span>[] indices = tLink.<a class="code" href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a7d158ecfc339dbaef83d92f3f584d995.html#a7d158ecfc339dbaef83d92f3f584d995">getIndices</a>();</div>
<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;        <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> inh = null;</div>
<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;        <span class="keywordflow">if</span> ((indices.length == 2) || (content instanceof <a class="code" href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">Inheritance</a>)) { <span class="comment">// &lt;(*,</span></div>
<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;                                                                            <span class="comment">// term,</span></div>
<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;                                                                            <span class="comment">// #)</span></div>
<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;                                                                            <span class="comment">// --&gt;</span></div>
<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;                                                                            <span class="comment">// #&gt;</span></div>
<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;            inh = content;</div>
<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (indices.length == 3) { <span class="comment">// &lt;&lt;(*, term, #) --&gt; #&gt; ==&gt; #&gt;</span></div>
<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;            inh = content.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">componentAt</a>(indices[0]);</div>
<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;        } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (indices.length == 4) { <span class="comment">// &lt;(&amp;&amp;, &lt;(*, term, #) --&gt; #&gt;, #) ==&gt;</span></div>
<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;                                            <span class="comment">// #&gt;</span></div>
<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;            <a class="code" href="../../d8/db8/classnars_1_1language_1_1Term.html">Term</a> component = content.<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">componentAt</a>(indices[0]);</div>
<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;            <span class="keywordflow">if</span> ((component instanceof <a class="code" href="../../d6/d98/classnars_1_1language_1_1Conjunction.html">Conjunction</a>)</div>
<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;                    &amp;&amp; (((content instanceof <a class="code" href="../../da/db6/classnars_1_1language_1_1Implication.html">Implication</a>) &amp;&amp; (indices[0] == 0)) || (content instanceof <a class="code" href="../../d1/d8b/classnars_1_1language_1_1Equivalence.html">Equivalence</a>))) {</div>
<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;                inh = ((<a class="code" href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">CompoundTerm</a>) component).componentAt(indices[1]);</div>
<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;                <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;            }</div>
<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;        }</div>
<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;        <span class="keywordflow">if</span> (inh instanceof Inheritance) {</div>
<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;            <a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">StructuralRules</a>.<a class="code" href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a6f7188931508f5b84e6de02301bf798d.html#a6f7188931508f5b84e6de02301bf798d">transformProductImage</a>((Inheritance) inh, content,</div>
<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;                    indices, memory);</div>
<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;        }</div>
<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    }</div>
<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;}</div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_a133e3243292f9daacaa8443acef6b185_html_a133e3243292f9daacaa8443acef6b185"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a133e3243292f9daacaa8443acef6b185.html#a133e3243292f9daacaa8443acef6b185">nars.entity.TermLink.getTarget</a></div><div class="ttdeci">Term getTarget()</div><div class="ttdoc">Get the target of the link. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00143">TermLink.java:143</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Conjunction_html"><div class="ttname"><a href="../../d6/d98/classnars_1_1language_1_1Conjunction.html">nars.language.Conjunction</a></div><div class="ttdoc">Conjunction of statements. </div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d2f/Conjunction_8java_source.html#l00031">Conjunction.java:31</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_aa64a90e38bec275a6a3acba2a2eeefa1_html_aa64a90e38bec275a6a3acba2a2eeefa1"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_aa64a90e38bec275a6a3acba2a2eeefa1.html#aa64a90e38bec275a6a3acba2a2eeefa1">nars.inference.StructuralRules.transformSetRelation</a></div><div class="ttdeci">static void transformSetRelation(CompoundTerm compound, Statement statement, short side, Memory memory)</div><div class="ttdoc">{<S --> {P}>} |- <S <-> {P}> </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00322">StructuralRules.java:322</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735_html_a4f61a7c2dc75c9da475030894eac0735"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a4f61a7c2dc75c9da475030894eac0735.html#a4f61a7c2dc75c9da475030894eac0735">nars.inference.RuleTables.asymmetricSymmetric</a></div><div class="ttdeci">static void asymmetricSymmetric(Sentence asym, Sentence sym, int figure, Memory memory)</div><div class="ttdoc">Syllogistic rules whose first premise is on an asymmetric relation, and the second on a symmetric rel...</div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00362">RuleTables.java:362</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0_html_ababe6155e2f78e769f76493317e118e0"><div class="ttname"><a href="../../d1/d5e/classnars_1_1language_1_1Statement_ababe6155e2f78e769f76493317e118e0.html#ababe6155e2f78e769f76493317e118e0">nars.language.Statement.getPredicate</a></div><div class="ttdeci">Term getPredicate()</div><div class="ttdoc">Return the second component of the statement. </div><div class="ttdef"><b>Definition:</b> <a href="../../d2/d44/Statement_8java_source.html#l00237">Statement.java:237</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Inheritance_html"><div class="ttname"><a href="../../d0/df3/classnars_1_1language_1_1Inheritance.html">nars.language.Inheritance</a></div><div class="ttdoc">A Statement about an Inheritance relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d17/Inheritance_8java_source.html#l00031">Inheritance.java:31</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05_html_a00ffbf7a9069cfd135acae4b46d78d05"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a00ffbf7a9069cfd135acae4b46d78d05.html#a00ffbf7a9069cfd135acae4b46d78d05">nars.inference.RuleTables.compoundAndSelf</a></div><div class="ttdeci">static void compoundAndSelf(CompoundTerm compound, Term component, boolean compoundTask, Memory memory)</div><div class="ttdoc">Inference between a compound term and a component of it. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00570">RuleTables.java:570</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_ab332619119b303e3ecf9920684448ff8_html_ab332619119b303e3ecf9920684448ff8"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_ab332619119b303e3ecf9920684448ff8.html#ab332619119b303e3ecf9920684448ff8">nars.inference.StructuralRules.structuralDecompose1</a></div><div class="ttdeci">static void structuralDecompose1(CompoundTerm compound, short index, Statement statement, Memory memory)</div><div class="ttdoc">{<(S&T) –> P>, S@(S&T)} |- <S --> P> </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00252">StructuralRules.java:252</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1SetExt_html"><div class="ttname"><a href="../../de/d1d/classnars_1_1language_1_1SetExt.html">nars.language.SetExt</a></div><div class="ttdoc">An extensionally defined set, which contains one or more instances. </div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d96/SetExt_8java_source.html#l00031">SetExt.java:31</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1LocalRules_a2a6db5879fbb7ba315891fa9d49c985b_html_a2a6db5879fbb7ba315891fa9d49c985b"><div class="ttname"><a href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a2a6db5879fbb7ba315891fa9d49c985b.html#a2a6db5879fbb7ba315891fa9d49c985b">nars.inference.LocalRules.matchAsymSym</a></div><div class="ttdeci">static void matchAsymSym(Sentence asym, Sentence sym, int figure, Memory memory)</div><div class="ttdoc">Inheritance/Implication matches Similarity/Equivalence. </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/db7/LocalRules_8java_source.html#l00194">LocalRules.java:194</a></div></div>
<div class="ttc" id="namespacenars_1_1entity_html"><div class="ttname"><a href="../../db/dec/namespacenars_1_1entity.html">nars.entity</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d8/d59/BudgetValue_8java_source.html#l00021">BudgetValue.java:21</a></div></div>
<div class="ttc" id="namespacenars_1_1io_html"><div class="ttname"><a href="../../db/d64/namespacenars_1_1io.html">nars.io</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d26/ExperienceReader_8java_source.html#l00021">ExperienceReader.java:21</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_a7d158ecfc339dbaef83d92f3f584d995_html_a7d158ecfc339dbaef83d92f3f584d995"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a7d158ecfc339dbaef83d92f3f584d995.html#a7d158ecfc339dbaef83d92f3f584d995">nars.entity.TermLink.getIndices</a></div><div class="ttdeci">short[] getIndices()</div><div class="ttdoc">Get all the indices. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00159">TermLink.java:159</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_a7baceb5d0b1adc6005f24cf83bc88e01_html_a7baceb5d0b1adc6005f24cf83bc88e01"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a7baceb5d0b1adc6005f24cf83bc88e01.html#a7baceb5d0b1adc6005f24cf83bc88e01">nars.inference.StructuralRules.structuralCompose2</a></div><div class="ttdeci">static void structuralCompose2(CompoundTerm compound, short index, Statement statement, short side, Memory memory)</div><div class="ttdoc">{<S --> P>, S@(S&T)} |- <(S&T) –> (P&T)> {<S --> P>, S@(M-S)} |- <(M-P) –> (M-S)> ...</div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00064">StructuralRules.java:64</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_html"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink.html">nars.entity.TermLink</a></div><div class="ttdoc">A link between a compound term and a component term. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00038">TermLink.java:38</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1CompositionalRules_html"><div class="ttname"><a href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules.html">nars.inference.CompositionalRules</a></div><div class="ttdoc">Compound term composition and decomposition rules, with two premises. </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d15/CompositionalRules_8java_source.html#l00035">CompositionalRules.java:35</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Term_ae2dba162b71bb9b806f54832249a260c_html_ae2dba162b71bb9b806f54832249a260c"><div class="ttname"><a href="../../d8/db8/classnars_1_1language_1_1Term_ae2dba162b71bb9b806f54832249a260c.html#ae2dba162b71bb9b806f54832249a260c">nars.language.Term.clone</a></div><div class="ttdeci">Object clone()</div><div class="ttdoc">Make a new Term with the same name. </div><div class="ttdef"><b>Definition:</b> <a href="../../d8/df2/Term_8java_source.html#l00083">Term.java:83</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_html"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory.html">nars.storage.Memory</a></div><div class="ttdoc">The memory of the system. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00051">Memory.java:51</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_a267c238e8b0425f2f5ca407b16092d00_html_a267c238e8b0425f2f5ca407b16092d00"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a267c238e8b0425f2f5ca407b16092d00.html#a267c238e8b0425f2f5ca407b16092d00">nars.entity.TermLink.COMPONENT</a></div><div class="ttdeci">static final short COMPONENT</div><div class="ttdoc">At (&&, A, C), point to C. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00042">TermLink.java:42</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Similarity_html"><div class="ttname"><a href="../../d3/d1f/classnars_1_1language_1_1Similarity.html">nars.language.Similarity</a></div><div class="ttdoc">A Statement about a Similarity relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../df/d32/Similarity_8java_source.html#l00031">Similarity.java:31</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_html"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules.html">nars.inference.SyllogisticRules</a></div><div class="ttdoc">Syllogisms: Inference rules based on the transitivity of the relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00031">SyllogisticRules.java:31</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508_html_a26eda4f00b333b706b4e3d069fdf1508"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory_a26eda4f00b333b706b4e3d069fdf1508.html#a26eda4f00b333b706b4e3d069fdf1508">nars.storage.Memory.getCurrentTask</a></div><div class="ttdeci">Task getCurrentTask()</div><div class="ttdoc">The selected Task. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00625">Memory.java:625</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea_html_a6c0e98a7948be8d940ba6afc52d43fea"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a6c0e98a7948be8d940ba6afc52d43fea.html#a6c0e98a7948be8d940ba6afc52d43fea">nars.entity.TermLink.COMPOUND_STATEMENT</a></div><div class="ttdeci">static final short COMPOUND_STATEMENT</div><div class="ttdoc">At C, point to <C --> A> </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00048">TermLink.java:48</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a8e422154fd8288d161435c3a53e44276_html_a8e422154fd8288d161435c3a53e44276"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8e422154fd8288d161435c3a53e44276.html#a8e422154fd8288d161435c3a53e44276">nars.inference.RuleTables.compoundAndStatement</a></div><div class="ttdeci">static void compoundAndStatement(CompoundTerm compound, short index, Statement statement, short side, Term beliefTerm, Memory memory)</div><div class="ttdoc">Inference between a compound term and a statement. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00629">RuleTables.java:629</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f_html_abebe00126841b70600b47a476719922f"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_abebe00126841b70600b47a476719922f.html#abebe00126841b70600b47a476719922f">nars.inference.RuleTables.indexToFigure</a></div><div class="ttdeci">static int indexToFigure(TermLink link1, TermLink link2)</div><div class="ttdoc">Decide the figure of syllogism according to the locations of the common term in the premises...</div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00256">RuleTables.java:256</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Task_html"><div class="ttname"><a href="../../dc/ddc/classnars_1_1entity_1_1Task.html">nars.entity.Task</a></div><div class="ttdoc">A task to be processed, consists of a Sentence and a BudgetValue. </div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d10/Task_8java_source.html#l00035">Task.java:35</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1CompoundTerm_ad637ccaf9aecf41f3961d095900f2d5e_html_ad637ccaf9aecf41f3961d095900f2d5e"><div class="ttname"><a href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ad637ccaf9aecf41f3961d095900f2d5e.html#ad637ccaf9aecf41f3961d095900f2d5e">nars.language.CompoundTerm.containComponent</a></div><div class="ttdeci">boolean containComponent(Term t)</div><div class="ttdoc">Check whether the compound contains a certain component. </div><div class="ttdef"><b>Definition:</b> <a href="../../d5/d0e/CompoundTerm_8java_source.html#l00397">CompoundTerm.java:397</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Statement_html"><div class="ttname"><a href="../../d1/d5e/classnars_1_1language_1_1Statement.html">nars.language.Statement</a></div><div class="ttdoc">A statement is a compound term, consisting of a subject, a predicate, and a relation symbol in betwee...</div><div class="ttdef"><b>Definition:</b> <a href="../../d2/d44/Statement_8java_source.html#l00033">Statement.java:33</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f_html_ab140cb553a6cf40b07093d1df283567f"><div class="ttname"><a href="../../dc/ddc/classnars_1_1entity_1_1Task_ab140cb553a6cf40b07093d1df283567f.html#ab140cb553a6cf40b07093d1df283567f">nars.entity.Task.getSentence</a></div><div class="ttdeci">Sentence getSentence()</div><div class="ttdoc">Get the sentence. </div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d10/Task_8java_source.html#l00099">Task.java:99</a></div></div>
<div class="ttc" id="classnars_1_1io_1_1Symbols_html"><div class="ttname"><a href="../../dc/d71/classnars_1_1io_1_1Symbols.html">nars.io.Symbols</a></div><div class="ttdoc">The ASCII symbols used in I/O. </div><div class="ttdef"><b>Definition:</b> <a href="../../d5/da0/Symbols_8java_source.html#l00026">Symbols.java:26</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Sentence_ad1ded9a02cae3557948d05530cd4d37e_html_ad1ded9a02cae3557948d05530cd4d37e"><div class="ttname"><a href="../../d6/d25/classnars_1_1entity_1_1Sentence_ad1ded9a02cae3557948d05530cd4d37e.html#ad1ded9a02cae3557948d05530cd4d37e">nars.entity.Sentence.getContent</a></div><div class="ttdeci">Term getContent()</div><div class="ttdoc">Get the content of the sentence. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d1c/Sentence_8java_source.html#l00133">Sentence.java:133</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1SetInt_html"><div class="ttname"><a href="../../d2/dfc/classnars_1_1language_1_1SetInt.html">nars.language.SetInt</a></div><div class="ttdoc">An intensionally defined set, which contains one or more instances defining the Term. </div><div class="ttdef"><b>Definition:</b> <a href="../../dc/dfd/SetInt_8java_source.html#l00031">SetInt.java:31</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Concept_html"><div class="ttname"><a href="../../d4/d22/classnars_1_1entity_1_1Concept.html">nars.entity.Concept</a></div><div class="ttdoc">A concept contains information associated with a term, including directly and indirectly related task...</div><div class="ttdef"><b>Definition:</b> <a href="../../df/d62/Concept_8java_source.html#l00047">Concept.java:47</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a5724b3ed7e885c29110acceac0d677d5_html_a5724b3ed7e885c29110acceac0d677d5"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a5724b3ed7e885c29110acceac0d677d5.html#a5724b3ed7e885c29110acceac0d677d5">nars.inference.SyllogisticRules.dedExe</a></div><div class="ttdeci">static void dedExe(Term term1, Term term2, Sentence sentence, Sentence belief, Memory memory)</div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00053">SyllogisticRules.java:53</a></div></div>
<div class="ttc" id="namespacenars_1_1storage_html"><div class="ttname"><a href="../../de/ddc/namespacenars_1_1storage.html">nars.storage</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d6/dce/Bag_8java_source.html#l00021">Bag.java:21</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_a38aabb9f3b3a70e03852da1e32ec665d_html_a38aabb9f3b3a70e03852da1e32ec665d"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a38aabb9f3b3a70e03852da1e32ec665d.html#a38aabb9f3b3a70e03852da1e32ec665d">nars.inference.StructuralRules.structuralDecompose2</a></div><div class="ttdeci">static void structuralDecompose2(Statement statement, Memory memory)</div><div class="ttdoc">{<(S&T) –> (P&T)>, S@(S&T)} |- <S --> P> </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00127">StructuralRules.java:127</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_a871fc44819f07232afb4573ad704dee0_html_a871fc44819f07232afb4573ad704dee0"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory_a871fc44819f07232afb4573ad704dee0.html#a871fc44819f07232afb4573ad704dee0">nars.storage.Memory.noResult</a></div><div class="ttdeci">boolean noResult()</div><div class="ttdoc">Actually means that there are no new Tasks. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00129">Memory.java:129</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_ae891eef9a9d8c49a597a0f61a16b4570_html_ae891eef9a9d8c49a597a0f61a16b4570"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae891eef9a9d8c49a597a0f61a16b4570.html#ae891eef9a9d8c49a597a0f61a16b4570">nars.entity.TermLink.COMPOUND_CONDITION</a></div><div class="ttdeci">static final short COMPOUND_CONDITION</div><div class="ttdoc">At C, point to <(&&, C, B) ==> A> </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00052">TermLink.java:52</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_a3482da9df329962e73213118fbaef131_html_a3482da9df329962e73213118fbaef131"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory_a3482da9df329962e73213118fbaef131.html#a3482da9df329962e73213118fbaef131">nars.storage.Memory.setCurrentBelief</a></div><div class="ttdeci">void setCurrentBelief(Sentence currentBelief)</div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00651">Memory.java:651</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1LocalRules_html"><div class="ttname"><a href="../../d4/de9/classnars_1_1inference_1_1LocalRules.html">nars.inference.LocalRules</a></div><div class="ttdoc">Directly process a task by a oldBelief, with only two Terms in both. </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/db7/LocalRules_8java_source.html#l00038">LocalRules.java:38</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_ad95ac3ddd10cac258cecddba9b8a7fa1_html_ad95ac3ddd10cac258cecddba9b8a7fa1"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ad95ac3ddd10cac258cecddba9b8a7fa1.html#ad95ac3ddd10cac258cecddba9b8a7fa1">nars.entity.TermLink.COMPOUND</a></div><div class="ttdeci">static final short COMPOUND</div><div class="ttdoc">At C, point to (&&, A, C) </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00044">TermLink.java:44</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_a19d1a5ec8277f907caaef4ecfcab2f28_html_a19d1a5ec8277f907caaef4ecfcab2f28"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory_a19d1a5ec8277f907caaef4ecfcab2f28.html#a19d1a5ec8277f907caaef4ecfcab2f28">nars.storage.Memory.termToConcept</a></div><div class="ttdeci">Concept termToConcept(TermStruct term)</div><div class="ttdoc">Get an existing Concept for a given Term. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00166">Memory.java:166</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_html"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables.html">nars.inference.RuleTables</a></div><div class="ttdoc">Table of inference rules, indexed by the TermLinks for the task and the belief. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00033">RuleTables.java:33</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_ab64fca3ebda3499b831c2b93df736530_html_ab64fca3ebda3499b831c2b93df736530"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_ab64fca3ebda3499b831c2b93df736530.html#ab64fca3ebda3499b831c2b93df736530">nars.inference.RuleTables.symmetricSymmetric</a></div><div class="ttdeci">static void symmetricSymmetric(Sentence belief, Sentence taskSentence, int figure, Memory memory)</div><div class="ttdoc">Syllogistic rules whose both premises are on the same symmetric relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00442">RuleTables.java:442</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_abc9e35e4d0450f422fc03e2e53394e6a_html_abc9e35e4d0450f422fc03e2e53394e6a"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_abc9e35e4d0450f422fc03e2e53394e6a.html#abc9e35e4d0450f422fc03e2e53394e6a">nars.entity.TermLink.SELF</a></div><div class="ttdeci">static final short SELF</div><div class="ttdoc">At C, point to C; TaskLink only. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00040">TermLink.java:40</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Task_a091f9ec3bdacfd6741f767cb62b14c0f_html_a091f9ec3bdacfd6741f767cb62b14c0f"><div class="ttname"><a href="../../dc/ddc/classnars_1_1entity_1_1Task_a091f9ec3bdacfd6741f767cb62b14c0f.html#a091f9ec3bdacfd6741f767cb62b14c0f">nars.entity.Task.getContent</a></div><div class="ttdeci">Term getContent()</div><div class="ttdoc">Directly get the content of the sentence. </div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d10/Task_8java_source.html#l00108">Task.java:108</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Concept_a37e00599fc19c5931da40bd446890f89_html_a37e00599fc19c5931da40bd446890f89"><div class="ttname"><a href="../../d4/d22/classnars_1_1entity_1_1Concept_a37e00599fc19c5931da40bd446890f89.html#a37e00599fc19c5931da40bd446890f89">nars.entity.Concept.getBelief</a></div><div class="ttdeci">Sentence getBelief(Task task)</div><div class="ttdoc">Select a isBelief to interact with the given task in inference. </div><div class="ttdef"><b>Definition:</b> <a href="../../df/d62/Concept_8java_source.html#l00385">Concept.java:385</a></div></div>
<div class="ttc" id="namespacenars_html"><div class="ttname"><a href="../../d7/d81/namespacenars.html">nars</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TaskLink_html"><div class="ttname"><a href="../../d9/d27/classnars_1_1entity_1_1TaskLink.html">nars.entity.TaskLink</a></div><div class="ttdoc">Reference to a Task. </div><div class="ttdef"><b>Definition:</b> <a href="../../d3/dce/TaskLink_8java_source.html#l00032">TaskLink.java:32</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a34927349efcf87db97d23c60983b115b_html_a34927349efcf87db97d23c60983b115b"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a34927349efcf87db97d23c60983b115b.html#a34927349efcf87db97d23c60983b115b">nars.inference.RuleTables.asymmetricAsymmetric</a></div><div class="ttdeci">static void asymmetricAsymmetric(Sentence sentence, Sentence belief, int figure, Memory memory)</div><div class="ttdoc">Syllogistic rules whose both premises are on the same asymmetric relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00272">RuleTables.java:272</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a274b39b31e00ef27ae6baeaad3894a6a_html_a274b39b31e00ef27ae6baeaad3894a6a"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a274b39b31e00ef27ae6baeaad3894a6a.html#a274b39b31e00ef27ae6baeaad3894a6a">nars.inference.RuleTables.componentAndStatement</a></div><div class="ttdeci">static void componentAndStatement(CompoundTerm compound, short index, Statement statement, short side, Memory memory)</div><div class="ttdoc">Inference between a component term (of the current term) and a statement. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00683">RuleTables.java:683</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Sentence_html"><div class="ttname"><a href="../../d6/d25/classnars_1_1entity_1_1Sentence.html">nars.entity.Sentence</a></div><div class="ttdoc">A Sentence is an abstract class, mainly containing a Term, a TruthValue, and a Stamp. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d1c/Sentence_8java_source.html#l00031">Sentence.java:31</a></div></div>
<div class="ttc" id="classnars_1_1io_1_1Symbols_a3c9984ce55deb7819945871ce1fa3a82_html_a3c9984ce55deb7819945871ce1fa3a82"><div class="ttname"><a href="../../dc/d71/classnars_1_1io_1_1Symbols_a3c9984ce55deb7819945871ce1fa3a82.html#a3c9984ce55deb7819945871ce1fa3a82">nars.io.Symbols.VAR_DEPENDENT</a></div><div class="ttdeci">static final char VAR_DEPENDENT</div><div class="ttdef"><b>Definition:</b> <a href="../../d5/da0/Symbols_8java_source.html#l00034">Symbols.java:34</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_abdbbd955e13acf7fef8c6571b50cfebc_html_abdbbd955e13acf7fef8c6571b50cfebc"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_abdbbd955e13acf7fef8c6571b50cfebc.html#abdbbd955e13acf7fef8c6571b50cfebc">nars.inference.StructuralRules.transformNegation</a></div><div class="ttdeci">static void transformNegation(Term content, Memory memory)</div><div class="ttdoc">{A, A@(–, A)} |- (–, A) </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00598">StructuralRules.java:598</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f_html_ad85f45a7858737445d5158801774ff5f"><div class="ttname"><a href="../../d8/db8/classnars_1_1language_1_1Term_ad85f45a7858737445d5158801774ff5f.html#ad85f45a7858737445d5158801774ff5f">nars.language.Term.equals</a></div><div class="ttdeci">boolean equals(Object that)</div><div class="ttdoc">Equal terms have identical name, though not necessarily the same reference. </div><div class="ttdef"><b>Definition:</b> <a href="../../d8/df2/Term_8java_source.html#l00094">Term.java:94</a></div></div>
<div class="ttc" id="classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549_html_a9ff625a6eaec1b710eaec490ee8fc549"><div class="ttname"><a href="../../dc/d71/classnars_1_1io_1_1Symbols_a9ff625a6eaec1b710eaec490ee8fc549.html#a9ff625a6eaec1b710eaec490ee8fc549">nars.io.Symbols.VAR_QUERY</a></div><div class="ttdeci">static final char VAR_QUERY</div><div class="ttdef"><b>Definition:</b> <a href="../../d5/da0/Symbols_8java_source.html#l00035">Symbols.java:35</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_a7eed75f5c3aa4d832eeb95dd5374d5c1_html_a7eed75f5c3aa4d832eeb95dd5374d5c1"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a7eed75f5c3aa4d832eeb95dd5374d5c1.html#a7eed75f5c3aa4d832eeb95dd5374d5c1">nars.inference.StructuralRules.contraposition</a></div><div class="ttdeci">static void contraposition(Statement statement, Memory memory)</div><div class="ttdoc">{<A ==> B>, A@(–, A)} |- <(–, B) ==> (–, A)> </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00622">StructuralRules.java:622</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b_html_a2770bbc76b3aac48f49a1c15aaedab1b"><div class="ttname"><a href="../../de/da5/classnars_1_1language_1_1Variable_a2770bbc76b3aac48f49a1c15aaedab1b.html#a2770bbc76b3aac48f49a1c15aaedab1b">nars.language.Variable.unify</a></div><div class="ttdeci">static boolean unify(char type, Term t1, Term t2)</div><div class="ttdoc">To unify two terms. </div><div class="ttdef"><b>Definition:</b> <a href="../../d2/de0/Variable_8java_source.html#l00109">Variable.java:109</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Term_a88297bdbbfb5f3e292783647b14f0c70_html_a88297bdbbfb5f3e292783647b14f0c70"><div class="ttname"><a href="../../d8/db8/classnars_1_1language_1_1Term_a88297bdbbfb5f3e292783647b14f0c70.html#a88297bdbbfb5f3e292783647b14f0c70">nars.language.Term.isConstant</a></div><div class="ttdeci">boolean isConstant()</div><div class="ttdoc">Check whether the current Term can name a Concept. </div><div class="ttdef"><b>Definition:</b> <a href="../../d8/df2/Term_8java_source.html#l00113">Term.java:113</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1CompoundTerm_ac81c5851f664320ddec435641f198b03_html_ac81c5851f664320ddec435641f198b03"><div class="ttname"><a href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_ac81c5851f664320ddec435641f198b03.html#ac81c5851f664320ddec435641f198b03">nars.language.CompoundTerm.size</a></div><div class="ttdeci">int size()</div><div class="ttdoc">get the number of components </div><div class="ttdef"><b>Definition:</b> <a href="../../d5/d0e/CompoundTerm_8java_source.html#l00347">CompoundTerm.java:347</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_aa98f40a1f1409b81531260124ebd13db_html_aa98f40a1f1409b81531260124ebd13db"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_aa98f40a1f1409b81531260124ebd13db.html#aa98f40a1f1409b81531260124ebd13db">nars.inference.StructuralRules.structuralCompound</a></div><div class="ttdeci">static void structuralCompound(CompoundTerm compound, Term component, boolean compoundTask, Memory memory)</div><div class="ttdoc">{(&&, A, B), A@(&&, A, B)} |- A {(||, A, B), A@(||, A, B)} |- A </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00562">StructuralRules.java:562</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a90588e33b6d7ca522e787ee476a2a012_html_a90588e33b6d7ca522e787ee476a2a012"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a90588e33b6d7ca522e787ee476a2a012.html#a90588e33b6d7ca522e787ee476a2a012">nars.inference.SyllogisticRules.conditionalAna</a></div><div class="ttdeci">static void conditionalAna(Equivalence premise1, short index, Term premise2, int side, Memory memory)</div><div class="ttdoc">{<(&&, S1, S2) <=> P>, (&&, S1, S2)} |- P </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00381">SyllogisticRules.java:381</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Disjunction_html"><div class="ttname"><a href="../../d9/d5d/classnars_1_1language_1_1Disjunction.html">nars.language.Disjunction</a></div><div class="ttdoc">A disjunction of Statements. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/db5/Disjunction_8java_source.html#l00031">Disjunction.java:31</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Sentence_a7d95d60caaf4c895559182a7eb2ff71e_html_a7d95d60caaf4c895559182a7eb2ff71e"><div class="ttname"><a href="../../d6/d25/classnars_1_1entity_1_1Sentence_a7d95d60caaf4c895559182a7eb2ff71e.html#a7d95d60caaf4c895559182a7eb2ff71e">nars.entity.Sentence.isJudgment</a></div><div class="ttdeci">boolean isJudgment()</div><div class="ttdoc">Distinguish Judgment from Goal ("instanceof Judgment" doesn&#39;t work) </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d1c/Sentence_8java_source.html#l00181">Sentence.java:181</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_a6f7188931508f5b84e6de02301bf798d_html_a6f7188931508f5b84e6de02301bf798d"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a6f7188931508f5b84e6de02301bf798d.html#a6f7188931508f5b84e6de02301bf798d">nars.inference.StructuralRules.transformProductImage</a></div><div class="ttdeci">static void transformProductImage(Inheritance inh, CompoundTerm oldContent, short[] indices, Memory memory)</div><div class="ttdoc">Equivalent transformation between products and images {<(*, S, M) –> P>, S@(*, S, M)} |- <S --> (/, P, _, M)> {<S --> (/, P, _, M)>, P@(/, P, _, M)} |- <(*, S, M) –> P> {<S --> (/, P, _, M)>, M@(/, P, _, M)} |- <M --> (/, P, S, _)> </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00357">StructuralRules.java:357</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_a460d426cd9959e390cc7f66ba7a4b024_html_a460d426cd9959e390cc7f66ba7a4b024"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a460d426cd9959e390cc7f66ba7a4b024.html#a460d426cd9959e390cc7f66ba7a4b024">nars.entity.TermLink.COMPONENT_STATEMENT</a></div><div class="ttdeci">static final short COMPONENT_STATEMENT</div><div class="ttdoc">At <C --> A>, point to C. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00046">TermLink.java:46</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a764dbc9ccccf406df45e09fbfeda928f_html_a764dbc9ccccf406df45e09fbfeda928f"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a764dbc9ccccf406df45e09fbfeda928f.html#a764dbc9ccccf406df45e09fbfeda928f">nars.inference.RuleTables.compoundAndCompound</a></div><div class="ttdeci">static void compoundAndCompound(CompoundTerm taskTerm, CompoundTerm beliefTerm, Memory memory)</div><div class="ttdoc">Inference between two compound terms. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00602">RuleTables.java:602</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a9403109ff25044e65311d553d99a490d_html_a9403109ff25044e65311d553d99a490d"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a9403109ff25044e65311d553d99a490d.html#a9403109ff25044e65311d553d99a490d">nars.inference.SyllogisticRules.analogy</a></div><div class="ttdeci">static void analogy(Term term1, Term term2, Sentence asym, Sentence sym, int figure, Memory memory)</div><div class="ttdoc">{<S ==> P>, <M <=> P>} |- <S ==> P> </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00148">SyllogisticRules.java:148</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Equivalence_html"><div class="ttname"><a href="../../d1/d8b/classnars_1_1language_1_1Equivalence.html">nars.language.Equivalence</a></div><div class="ttdoc">A Statement about an Equivalence relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d3/dcc/Equivalence_8java_source.html#l00031">Equivalence.java:31</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a62599450d65ff257b92df0d48d7c1bdf_html_a62599450d65ff257b92df0d48d7c1bdf"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a62599450d65ff257b92df0d48d7c1bdf.html#a62599450d65ff257b92df0d48d7c1bdf">nars.inference.RuleTables.conditionalDedIndWithVar</a></div><div class="ttdeci">static void conditionalDedIndWithVar(Implication conditional, short index, Statement statement, short side, Memory memory)</div><div class="ttdoc">Conditional deduction or induction, with variable unification. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00538">RuleTables.java:538</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Task_a23c0c966a1f5687123c089731f951e78_html_a23c0c966a1f5687123c089731f951e78"><div class="ttname"><a href="../../dc/ddc/classnars_1_1entity_1_1Task_a23c0c966a1f5687123c089731f951e78.html#a23c0c966a1f5687123c089731f951e78">nars.entity.Task.isStructural</a></div><div class="ttdeci">boolean isStructural()</div><div class="ttdoc">Check if a Task is derived by a StructuralRule. </div><div class="ttdef"><b>Definition:</b> <a href="../../d6/d10/Task_8java_source.html#l00135">Task.java:135</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Term_html"><div class="ttname"><a href="../../d8/db8/classnars_1_1language_1_1Term.html">nars.language.Term</a></div><div class="ttdoc">Term is the basic component of Narsese, and the object of processing in NARS. </div><div class="ttdef"><b>Definition:</b> <a href="../../d8/df2/Term_8java_source.html#l00040">Term.java:40</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Negation_html"><div class="ttname"><a href="../../da/d1e/classnars_1_1language_1_1Negation.html">nars.language.Negation</a></div><div class="ttdoc">A negation of a Statement. </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/d66/Negation_8java_source.html#l00031">Negation.java:31</a></div></div>
<div class="ttc" id="classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d_html_a60c92a89535a54f54a72e20a5969536d"><div class="ttname"><a href="../../dc/d71/classnars_1_1io_1_1Symbols_a60c92a89535a54f54a72e20a5969536d.html#a60c92a89535a54f54a72e20a5969536d">nars.io.Symbols.VAR_INDEPENDENT</a></div><div class="ttdeci">static final char VAR_INDEPENDENT</div><div class="ttdef"><b>Definition:</b> <a href="../../d5/da0/Symbols_8java_source.html#l00033">Symbols.java:33</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84_html_a3e3eec10853be6dcf8c7532259cf4a84"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a3e3eec10853be6dcf8c7532259cf4a84.html#a3e3eec10853be6dcf8c7532259cf4a84">nars.inference.RuleTables.detachmentWithVar</a></div><div class="ttdeci">static void detachmentWithVar(Sentence originalMainSentence, Sentence subSentence, int index, Memory memory)</div><div class="ttdoc">The detachment rule, with variable unification. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00495">RuleTables.java:495</a></div></div>
<div class="ttc" id="namespacenars_1_1language_html"><div class="ttname"><a href="../../d0/d72/namespacenars_1_1language.html">nars.language</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d5/d0e/CompoundTerm_8java_source.html#l00021">CompoundTerm.java:21</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02_html_a795ea0b57cd6467bbe2a8f68a34cba02"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_a795ea0b57cd6467bbe2a8f68a34cba02.html#a795ea0b57cd6467bbe2a8f68a34cba02">nars.entity.TermLink.getType</a></div><div class="ttdeci">short getType()</div><div class="ttdoc">Get the link type. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00151">TermLink.java:151</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a315c474733bb01f6f01e579221b417d4_html_a315c474733bb01f6f01e579221b417d4"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a315c474733bb01f6f01e579221b417d4.html#a315c474733bb01f6f01e579221b417d4">nars.inference.SyllogisticRules.elimiVarDep</a></div><div class="ttdeci">static void elimiVarDep(CompoundTerm compound, Term component, boolean compoundTask, Memory memory)</div><div class="ttdoc">{(&&, <#x() –> S>, <#x() –> P>>, <M --> P>} |- <M --> S> </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00533">SyllogisticRules.java:533</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1CompositionalRules_ae7906cfca35e9c7568ace240aba808a0_html_ae7906cfca35e9c7568ace240aba808a0"><div class="ttname"><a href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_ae7906cfca35e9c7568ace240aba808a0.html#ae7906cfca35e9c7568ace240aba808a0">nars.inference.CompositionalRules.introVarInner</a></div><div class="ttdeci">static void introVarInner(Statement premise1, Statement premise2, CompoundTerm oldCompound, Memory memory)</div><div class="ttdoc">     Introduce a second independent variable into two terms with a common  component ...</div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d15/CompositionalRules_8java_source.html#l00483">CompositionalRules.java:483</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_ac2d01dfdc40bdd47c757cb549217e6e3_html_ac2d01dfdc40bdd47c757cb549217e6e3"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_ac2d01dfdc40bdd47c757cb549217e6e3.html#ac2d01dfdc40bdd47c757cb549217e6e3">nars.inference.RuleTables.reason</a></div><div class="ttdeci">static void reason(TaskLink tLink, TermLink bLink, Memory memory)</div><div class="ttdoc">Entry point of the inference engine. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00045">RuleTables.java:45</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a171a1f81d7f22d9cd0301220a79f4a63_html_a171a1f81d7f22d9cd0301220a79f4a63"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a171a1f81d7f22d9cd0301220a79f4a63.html#a171a1f81d7f22d9cd0301220a79f4a63">nars.inference.SyllogisticRules.resemblance</a></div><div class="ttdeci">static void resemblance(Term term1, Term term2, Sentence belief, Sentence sentence, int figure, Memory memory)</div><div class="ttdoc">{<S <=> M>, <M <=> P>} |- <S <=> P> </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00189">SyllogisticRules.java:189</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840_html_acedae916705e9fa1669391a7d728b840"><div class="ttname"><a href="../../d0/dee/classnars_1_1language_1_1CompoundTerm_acedae916705e9fa1669391a7d728b840.html#acedae916705e9fa1669391a7d728b840">nars.language.CompoundTerm.componentAt</a></div><div class="ttdeci">Term componentAt(int i)</div><div class="ttdoc">get a component by index </div><div class="ttdef"><b>Definition:</b> <a href="../../d5/d0e/CompoundTerm_8java_source.html#l00356">CompoundTerm.java:356</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1LocalRules_a93af32adec92cf57671c32e9ccc2dffc_html_a93af32adec92cf57671c32e9ccc2dffc"><div class="ttname"><a href="../../d4/de9/classnars_1_1inference_1_1LocalRules_a93af32adec92cf57671c32e9ccc2dffc.html#a93af32adec92cf57671c32e9ccc2dffc">nars.inference.LocalRules.matchReverse</a></div><div class="ttdeci">static void matchReverse(Memory memory)</div><div class="ttdoc">The task and belief match reversely. </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/db7/LocalRules_8java_source.html#l00171">LocalRules.java:171</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_a29e0fbd7745a4ae5e324dbfe64b8f488_html_a29e0fbd7745a4ae5e324dbfe64b8f488"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules_a29e0fbd7745a4ae5e324dbfe64b8f488.html#a29e0fbd7745a4ae5e324dbfe64b8f488">nars.inference.StructuralRules.structuralCompose1</a></div><div class="ttdeci">static void structuralCompose1(CompoundTerm compound, short index, Statement statement, Memory memory)</div><div class="ttdoc">{<S --> P>, P@(P&Q)} |- <S --> (P&Q)> </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00207">StructuralRules.java:207</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a08c8ce3ed165e9c09a7a379d9e871626_html_a08c8ce3ed165e9c09a7a379d9e871626"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a08c8ce3ed165e9c09a7a379d9e871626.html#a08c8ce3ed165e9c09a7a379d9e871626">nars.inference.SyllogisticRules.detachment</a></div><div class="ttdeci">static void detachment(Sentence mainSentence, Sentence subSentence, int side, Memory memory)</div><div class="ttdoc">{<<M --> S> ==> <M --> P>>, <M --> S>} |- <M --> P> {<<M --> S> ==> <M –> P>>, <M --> P>} |- <M --> ...</div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00224">SyllogisticRules.java:224</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_ae7bcc74faf32830b75e1ce3eebfd3a93_html_ae7bcc74faf32830b75e1ce3eebfd3a93"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_ae7bcc74faf32830b75e1ce3eebfd3a93.html#ae7bcc74faf32830b75e1ce3eebfd3a93">nars.entity.TermLink.COMPONENT_CONDITION</a></div><div class="ttdeci">static final short COMPONENT_CONDITION</div><div class="ttdoc">At <(&&, C, B) ==> A>, point to C. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00050">TermLink.java:50</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1CompositionalRules_a53f7edf7bfe7433da42e8fcf36fd6604_html_a53f7edf7bfe7433da42e8fcf36fd6604"><div class="ttname"><a href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_a53f7edf7bfe7433da42e8fcf36fd6604.html#a53f7edf7bfe7433da42e8fcf36fd6604">nars.inference.CompositionalRules.composeCompound</a></div><div class="ttdeci">static void composeCompound(Statement taskContent, Statement beliefContent, int index, Memory memory)</div><div class="ttdoc">{<S ==> M>, </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d15/CompositionalRules_8java_source.html#l00052">CompositionalRules.java:52</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_aae366ea198c2340fef786120d5c2163b_html_aae366ea198c2340fef786120d5c2163b"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory_aae366ea198c2340fef786120d5c2163b.html#aae366ea198c2340fef786120d5c2163b">nars.storage.Memory.getCurrentBelief</a></div><div class="ttdeci">Sentence getCurrentBelief()</div><div class="ttdoc">The selected belief. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00647">Memory.java:647</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974_html_af093a699db24ea0f11c4dafd0004f974"><div class="ttname"><a href="../../d4/d8b/classnars_1_1entity_1_1TermLink_af093a699db24ea0f11c4dafd0004f974.html#af093a699db24ea0f11c4dafd0004f974">nars.entity.TermLink.getIndex</a></div><div class="ttdeci">short getIndex(int i)</div><div class="ttdoc">Get one index by level. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/daa/TermLink_8java_source.html#l00168">TermLink.java:168</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1CompositionalRules_a6ce4b4caba57fe856aff6f6a2c7ee552_html_a6ce4b4caba57fe856aff6f6a2c7ee552"><div class="ttname"><a href="../../d8/d79/classnars_1_1inference_1_1CompositionalRules_a6ce4b4caba57fe856aff6f6a2c7ee552.html#a6ce4b4caba57fe856aff6f6a2c7ee552">nars.inference.CompositionalRules.decomposeStatement</a></div><div class="ttdeci">static void decomposeStatement(CompoundTerm compound, Term component, boolean compoundTask, Memory memory)</div><div class="ttdoc">{(||, S, P), P} |- S {(&&, S, P), P} |- S </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d15/CompositionalRules_8java_source.html#l00293">CompositionalRules.java:293</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1CompoundTerm_html"><div class="ttname"><a href="../../d0/dee/classnars_1_1language_1_1CompoundTerm.html">nars.language.CompoundTerm</a></div><div class="ttdoc">A CompoundTerm is a Term with internal (syntactic) structure. </div><div class="ttdef"><b>Definition:</b> <a href="../../d5/d0e/CompoundTerm_8java_source.html#l00036">CompoundTerm.java:36</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630_html_ac6fa0cb96108a540d7e768ffc1b95630"><div class="ttname"><a href="../../d6/d25/classnars_1_1entity_1_1Sentence_ac6fa0cb96108a540d7e768ffc1b95630.html#ac6fa0cb96108a540d7e768ffc1b95630">nars.entity.Sentence.cloneContent</a></div><div class="ttdeci">Term cloneContent()</div><div class="ttdoc">Clone the content of the sentence. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d1c/Sentence_8java_source.html#l00149">Sentence.java:149</a></div></div>
<div class="ttc" id="classnars_1_1entity_1_1Sentence_a721f626ab83f34dc2e6858a4eede7102_html_a721f626ab83f34dc2e6858a4eede7102"><div class="ttname"><a href="../../d6/d25/classnars_1_1entity_1_1Sentence_a721f626ab83f34dc2e6858a4eede7102.html#a721f626ab83f34dc2e6858a4eede7102">nars.entity.Sentence.clone</a></div><div class="ttdeci">Object clone()</div><div class="ttdoc">Clone the Sentence. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/d1c/Sentence_8java_source.html#l00122">Sentence.java:122</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Variable_html"><div class="ttname"><a href="../../de/da5/classnars_1_1language_1_1Variable.html">nars.language.Variable</a></div><div class="ttdoc">A variable term, which does not correspond to a concept. </div><div class="ttdef"><b>Definition:</b> <a href="../../d2/de0/Variable_8java_source.html#l00030">Variable.java:30</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1LocalRules_aac1c92950f50edd04d12229a8c992987_html_aac1c92950f50edd04d12229a8c992987"><div class="ttname"><a href="../../d4/de9/classnars_1_1inference_1_1LocalRules_aac1c92950f50edd04d12229a8c992987.html#aac1c92950f50edd04d12229a8c992987">nars.inference.LocalRules.match</a></div><div class="ttdeci">static void match(Task task, Sentence belief, Memory memory)</div><div class="ttdoc">The task and belief have the same content. </div><div class="ttdef"><b>Definition:</b> <a href="../../d0/db7/LocalRules_8java_source.html#l00053">LocalRules.java:53</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5_html_ace4f80751d303c613e467163913bebf5"><div class="ttname"><a href="../../d1/d5e/classnars_1_1language_1_1Statement_ace4f80751d303c613e467163913bebf5.html#ace4f80751d303c613e467163913bebf5">nars.language.Statement.getSubject</a></div><div class="ttdeci">Term getSubject()</div><div class="ttdoc">Return the first component of the statement. </div><div class="ttdef"><b>Definition:</b> <a href="../../d2/d44/Statement_8java_source.html#l00229">Statement.java:229</a></div></div>
<div class="ttc" id="classnars_1_1language_1_1Implication_html"><div class="ttname"><a href="../../da/db6/classnars_1_1language_1_1Implication.html">nars.language.Implication</a></div><div class="ttdoc">A Statement about an Inheritance relation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d1a/Implication_8java_source.html#l00031">Implication.java:31</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a698f01981603a38d9da0e48930095d50_html_a698f01981603a38d9da0e48930095d50"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a698f01981603a38d9da0e48930095d50.html#a698f01981603a38d9da0e48930095d50">nars.inference.SyllogisticRules.abdIndCom</a></div><div class="ttdeci">static void abdIndCom(Term term1, Term term2, Sentence taskSentence, Sentence belief, int figure, Memory memory)</div><div class="ttdoc">{<M ==> S>, <M ==> P>} |- {<S ==> P>, </div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00097">SyllogisticRules.java:97</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a8628d400a8ceda7fea05039ddfea319b_html_a8628d400a8ceda7fea05039ddfea319b"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a8628d400a8ceda7fea05039ddfea319b.html#a8628d400a8ceda7fea05039ddfea319b">nars.inference.RuleTables.syllogisms</a></div><div class="ttdeci">static void syllogisms(TaskLink tLink, TermLink bLink, Term taskTerm, Term beliefTerm, Memory memory)</div><div class="ttdoc">Meta-table of syllogistic rules, indexed by the content classes of the taskSentence and the belief...</div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00197">RuleTables.java:197</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1SyllogisticRules_a6ee55e2d5114b506fdf5c59ae00dcd19_html_a6ee55e2d5114b506fdf5c59ae00dcd19"><div class="ttname"><a href="../../d4/daa/classnars_1_1inference_1_1SyllogisticRules_a6ee55e2d5114b506fdf5c59ae00dcd19.html#a6ee55e2d5114b506fdf5c59ae00dcd19">nars.inference.SyllogisticRules.conditionalDedInd</a></div><div class="ttdeci">static void conditionalDedInd(Implication premise1, short index, Term premise2, int side, Memory memory)</div><div class="ttdoc">{<(&&, S1, S2, S3) ==> P>, S1} |- <(&&, S2, S3) ==> P> {<(&&, S2, S3) ==> P>, <S1 ==> S2>} |- <(&&...</div><div class="ttdef"><b>Definition:</b> <a href="../../d4/d6b/SyllogisticRules_8java_source.html#l00291">SyllogisticRules.java:291</a></div></div>
<div class="ttc" id="classnars_1_1storage_1_1Memory_a8e0d3146c07a1cc961d3ebc63317412d_html_a8e0d3146c07a1cc961d3ebc63317412d"><div class="ttname"><a href="../../d8/df4/classnars_1_1storage_1_1Memory_a8e0d3146c07a1cc961d3ebc63317412d.html#a8e0d3146c07a1cc961d3ebc63317412d">nars.storage.Memory.getCurrentTerm</a></div><div class="ttdeci">Term getCurrentTerm()</div><div class="ttdoc">The selected Term. </div><div class="ttdef"><b>Definition:</b> <a href="../../db/d0c/Memory_8java_source.html#l00592">Memory.java:592</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1StructuralRules_html"><div class="ttname"><a href="../../db/d49/classnars_1_1inference_1_1StructuralRules.html">nars.inference.StructuralRules</a></div><div class="ttdoc">Single-premise inference rules involving compound terms. </div><div class="ttdef"><b>Definition:</b> <a href="../../da/da1/StructuralRules_8java_source.html#l00040">StructuralRules.java:40</a></div></div>
<div class="ttc" id="classnars_1_1inference_1_1RuleTables_a61c932b424464483bd80c783294ab446_html_a61c932b424464483bd80c783294ab446"><div class="ttname"><a href="../../da/de3/classnars_1_1inference_1_1RuleTables_a61c932b424464483bd80c783294ab446.html#a61c932b424464483bd80c783294ab446">nars.inference.RuleTables.transformTask</a></div><div class="ttdeci">static void transformTask(TaskLink tLink, Memory memory)</div><div class="ttdoc">The TaskLink is of type TRANSFORM, and the conclusion is an equivalent transformation. </div><div class="ttdef"><b>Definition:</b> <a href="../../d1/d5e/RuleTables_8java_source.html#l00738">RuleTables.java:738</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../dir_ed82ebcd34e530b246c6fd9032262140.html">aruntime</a></li><li class="navelem"><a class="el" href="../../dir_19496ddff8e6c0f2b6654287ecb1a472.html">src</a></li><li class="navelem"><a class="el" href="../../dir_db9c5934f797909f7296c2c2017f7fc9.html">main</a></li><li class="navelem"><a class="el" href="../../dir_6d74390eb6d6287951075e525bcb9bed.html">java</a></li><li class="navelem"><a class="el" href="../../dir_51a24984472456d47100350cd31f9a7c.html">nars</a></li><li class="navelem"><a class="el" href="../../dir_ee323373cf7c53e5489dea03632cbb1d.html">inference</a></li><li class="navelem"><a class="el" href="../../d1/d5e/RuleTables_8java.html">RuleTables.java</a></li>
    <li class="footer">Generated on Sun Jan 10 2016 18:03:58 for opennars by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
  </ul>
</div>
</body>
</html>
